package main

import (
	"fmt"
	"net/http"
	"time"
)

/*
运行main函数 就创建了一个协程  主协程

默认情况下P数量和cpu的核数一致
 */

//func main(){
	//fmt.Println("hello world!")
	//GOMAXPROCS	传入参数为0，表示查询当前设置的p数量
	//				传入参数大于0，表示设置p数量
	//fmt.Println(runtime.GOMAXPROCS(0))
	//开启一个协程处理test函数

	//开启协程同步执行
	//go test()
	//go test1()
	//普通情况下一个一个执行
	//test()
	//test1()


	//默认情况下，主协程结束，子协程也退出
//	time.Sleep(10 * time.Second)
//}
//
//
//func test(){
//	time.Sleep(2 * time.Second)
//	fmt.Println("i am test")
//}
//
//func test1(){
//	time.Sleep(4 * time.Second)
//	fmt.Println("i am test1")
//}

//func main(){
//	//匿名子协程
//	go func() {
//		i := 0
//		for {
//			i++
//			fmt.Println("子协程i=", i)
//			time.Sleep(1 * time.Second)
//		}
//	}()
//
//	for i := 0; i<3; i++{
//		fmt.Println("主协程 i=", i)
//		time.Sleep(1 * time.Second)
//	}
//}

func main(){
	for i:=0;i<5;i++ {
		go func() {
			_,err := http.Get("http://www.baidu.com")
			if err != nil{
				fmt.Println("error",err)
				return
			}else {
				fmt.Println("success")
			}
			time.Sleep(1 * time.Second)
		}()
	}
	time.Sleep(5 * time.Second)
}